<?php

class AnotacionCalendario{
	var $db;
	var $cod;	
	var $usuId;
	var $descripcion;
	var $fechaIni;
	var $fechaFin;
	var $repetir;

	
	/***********************************************
	*constructor
	***********************************************/
	function __construct($db,$cod=NULL,$usuId=NULL,$descripcion=NULL,$fechaIni=NULL,$fechaFin=NULL,$repetir=NULL){
		$this->db=$db;
		$this->cod=$cod;
		$this->usuId=$usuId;
		$this->descripcion=$descripcion;
		$this->fechaIni=$fechaIni;
		$this->fechaFin=$fechaFin;
		$this->repetir=$repetir;
	}
	
	/***********************************************
	* funcion getDatos
	* setea los datos de acuerdo al id
	***********************************************/
	function getDatos(){
		if($this->cod!=NULL){
			$sql = 	"SELECT a.`ano_cod`, a.`usu_id`, a.`ano_descripcion`, a.`ano_fecha_inicio`, a.`ano_fecha_fin`, a.`ano_repetir`
					FROM anotaciones_calendario
					WHERE a.ano_cod='".$this->cod."'";
			//echo $sql." ";		
			$result = $this->db->query($sql);
			if ($result === false) die("failed getDatos Mensajes");
			$result = $result->fetch_assoc();
			
			$this->usuId=$result['usu_id'];
			$this->descripcion=$result['ano_descripcion'];
			$this->fechaIni=$result['ano_fecha_inicio'];
			$this->fechaFin=$result['ano_fecha_fin'];
			$this->repetir=$result['ano_repetir'];
			
			if($result->num_rows >0)
				return true;
			else
				return false;

		}else
			return NULL;
	}
	
	/***********************************************
	* funcion getArray
	* setea los datos en un arreglo
	***********************************************/
	function getArray(){
		if($this->cod!=NULL){
			$array = array();
			$array['cod']=$this->cod;
			$array['usuId']=$this->usuId;
			$array['descripcion']=$this->descripcion;
			$array['fechaIni']=$this->fechaIni;
			$array['fechaFin']=$this->fechaFin;
			$array['repetir']=$this->repetir;

			return $array;
		}else
			return NULL;		
	}
	
	/***********************************************
	* funcion insertar
	* inserta un registro de la base
	***********************************************/
	function insertar(){
		$sql = "
			INSERT INTO `anotaciones_calendario` (
				`usu_id` ,
				`ano_descripcion` ,
				`ano_fecha_inicio`,
				`ano_fecha_fin` ,
				`ano_repetir`  
				
			)VALUES (
				'".$this->usuId."',
				'".$this->descripcion."',
				STR_TO_DATE('".$this->fechaIni."', '%Y-%m-%d'),
				STR_TO_DATE('".$this->fechaFin."', '%Y-%m-%d'),
				'".$this->repetir."'
				)";	
		//die($sql);
		$result = $this->db->query($sql);
		if($result==true)
			return true;
		else
			return false;		
	}
	
	/***********************************************
	* funcion actualizar
	* actualiza un registro de la base en base al id
	***********************************************/
	function actualizar(){
		$sql = "
			UPDATE `anotaciones_calendario` SET
				`ano_descripcion` = '".$this->descripcion."'
				WHERE `ano_cod` = '".$this->cod."'";	
		//die($sql);		
		$result = $this->db->query($sql);
		if($result==true)
			return true;
		else
			return false;		
	}
	
	/***********************************************
	* funcion eliminar
	* actualiza un registro de la base en base al id
	***********************************************/
	function eliminar(){
		$sql = "
			DELETE FROM anotaciones_calendario
			WHERE `ano_cod` = '".$this->cod."'";
		//die($sql);		
		$result = $this->db->query($sql);
		return $result;
	}
	
	/***********************************************
	* funcion getCalendario
	* obtiene y devuevle una lista de los clienes
	***********************************************/
	function getCalendario(){
		$lista=NULL;
		$sql = 	"SELECT a.`ano_cod`, a.`usu_id`, a.`ano_descripcion`, a.`ano_fecha_inicio`, a.`ano_fecha_fin`, a.`ano_repetir`
				FROM anotaciones_calendario a
				WHERE usu_id='".$this->usuId."'
				ORDER BY a.`ano_fecha_inicio` asc";	
		//die($sql);		
		$result = $this->db->query($sql);
		$arreglo=Array();
		if ($result === false) die("failed getCalendario");
		$cont=0;
		for($i=0;$i<$result->num_rows;$i++)
			$arreglo[$i]=$result->fetch_assoc();
		return $arreglo;	
	}
	
	/***********************************************
	* funcion getCalendario
	* obtiene y devuevle una lista de los clienes
	***********************************************/
	function getFechasDia($fecha){
		$lista=NULL;
		$sql = 	"SELECT a.`ano_cod`, a.`usu_id`, a.`ano_descripcion`
				FROM anotaciones_calendario a
				WHERE usu_id='".$this->usuId."'
				AND ano_fecha_inicio='".$fecha."'";	
		//die($sql);		
		$result = $this->db->query($sql);
		$arreglo=Array();
		if ($result === false) die("failed getFechasDia");
		$cont=0;
		for($i=0;$i<$result->num_rows;$i++)
			$arreglo[$i]=$result->fetch_assoc();
		return $arreglo;	
	}
	
	//Getters
	function getCod(){
		return $this->cod;
	}
	function getUsuId(){
		return $this->usuId;
	}
	function getDescripcion(){
		return $this->descripcion;
	}
	function getFechaIni(){
		return $this->fechaIni;
	}
	function getFechaFin(){
		return $this->fechaFin;
	}
	function getRepetir(){
		return $this->repetir;
	}
	
	
	//Setters
	function setCod($cod){
		$this->cod=$cod;
	}
	function setUsuId($usuId){
		$this->usuId=$usuId;
	}
	function setDescripcion($descripcion){
		$this->descripcion=$descripcion;
	}
	function setFechaIni($fechaIni){
		$this->fechaIni=$fechaIni;
	}
	function setFechaFin($fechaFin){
		$this->fechaFin=$fechaFin;
	}
	function setRepetir($repetir){
		$this->repetir=$repetir;
	}
}
?>